home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / dev / gg / ncurses-5.3.lha / ncurses-5.3 / test / testaddch.c < prev    next >
C/C++ Source or Header  |  2002-10-24  |  1KB  |  62 lines

  1. /*
  2.  * This is an example written by Alexander V. Lukyanov <lav@yars.free.net>,
  3.  * to demonstrate an inconsistency between ncurses and SVr4 curses.
  4.  *
  5.  * $Id: testaddch.c,v 1.5 2002/06/29 23:32:18 tom Exp $
  6.  */
  7. #include <test.priv.h>
  8.  
  9. static void
  10. attr_addstr(const char *s, chtype a)
  11. {
  12.     while (*s)
  13.     addch(((unsigned char) (*s++)) | a);
  14. }
  15.  
  16. int
  17. main(
  18.     int argc GCC_UNUSED,
  19.     char *argv[]GCC_UNUSED)
  20. {
  21.     unsigned i;
  22.     chtype back, set, attr;
  23.  
  24.     setlocale(LC_ALL, "");
  25.  
  26.     initscr();
  27.     start_color();
  28.     init_pair(1, COLOR_WHITE, COLOR_BLUE);
  29.     init_pair(2, COLOR_WHITE, COLOR_RED);
  30.     init_pair(3, COLOR_BLACK, COLOR_MAGENTA);
  31.     init_pair(4, COLOR_BLACK, COLOR_GREEN);
  32.     init_pair(5, COLOR_BLACK, COLOR_CYAN);
  33.     init_pair(6, COLOR_BLACK, COLOR_YELLOW);
  34.     init_pair(7, COLOR_BLACK, COLOR_WHITE);
  35.  
  36.     for (i = 0; i < 8; i++) {
  37.     back = (i & 1) ? A_BOLD | 'B' : ' ';
  38.     set = (i & 2) ? A_REVERSE : 0;
  39.     attr = (i & 4) ? COLOR_PAIR(4) : 0;
  40.  
  41.     bkgdset(back);
  42.     attrset(set);
  43.  
  44.     attr_addstr("Test string with spaces ->   <-\n", attr);
  45.     }
  46.     addch('\n');
  47.     for (i = 0; i < 8; i++) {
  48.     back = (i & 1) ? A_BOLD | 'B' | COLOR_PAIR(1) : ' ';
  49.     set = (i & 2) ? A_REVERSE | COLOR_PAIR(2) : 0;
  50.     attr = (i & 4) ? COLOR_PAIR(4) : 0;
  51.  
  52.     bkgdset(back);
  53.     attrset(set);
  54.  
  55.     attr_addstr("Test string with spaces ->   <-\n", attr);
  56.     }
  57.  
  58.     getch();
  59.     endwin();
  60.     ExitProgram(EXIT_SUCCESS);
  61. }
  62.